package edu.hm.dako.EchoApplication.Basics;

/**
 * Klasse AbstractClientThread
 * 
 * Abstrakte Klase, die in jedem Test-Client (TCP, UDP, RMI,...) 
 * implementiert werden muss.
 * 
 * @author Weiss
 *
 */

public abstract class AbstractClientThread extends Thread {

	 /**
     * initialize before startup
     * 
     * @param serverPort: Port des Servers
     * @param remoteServerAddress: Adresse des Servers
     * @param numberOfClient: Laufende Nummer des Test-Clients
     * @param messagelength: Laenge einer Nachricht
     * @param numberOfMessages: Anzahl zu sendender Nachrichten je Thread
     * @param clientThinkTime: Denkzeit des Test-Clients
     * @param sharedData: Gemeinsame Daten der Threads 
     */
	public abstract void initialize(
			int serverPort,
			String remoteServerAddress, 
			int numberOfClient, 
			int messageLength,
			int numberOfMessages, 
			int clientThinkTime,
			SharedClientStatistics sharedData);
}